//
//  MonsterCard.cpp
//  Test
//
//  Created by Pedram Ardeshirzadeh on 22-07-12.
//  Copyright (c) 2012 __MyCompanyName__. All rights reserved.
//

#include "MonsterCard.h"

MonsterCard::MonsterCard(string n, string nr, string d, MonsterCard::attributes a, int lvl, int att, int def, string t): Card(n, nr, d) {
    attribute = a;
    level = lvl;
    attack = att;
    defense = def;
    type = t;
}

void MonsterCard::setAttribute(MonsterCard::attributes a) {
    attribute = a;
}

MonsterCard::attributes MonsterCard::getAttribute() {
    return attribute;
}

void MonsterCard::setLevel(int lvl) {
    level = lvl;
}

int MonsterCard::getLevel() {
    return level;
}

void MonsterCard::setAttack(int att) {
    attack = att;
}

int MonsterCard::getAttack() {
    return attack;
}

void MonsterCard::setDefense(int def) {
    defense = def;
}

int MonsterCard::getDefense() {
    return defense;
}

void MonsterCard::setType(string t) {
    type = t;
}

string MonsterCard::getType() {
    return type;
}

string MonsterCard::toString() {
    string output;
    stringstream ss;
    ss << "MC-" << name << "(" << level << ") [" << attack << "/" << defense << "]";
    output = ss.str();
    
    return output;
}

MonsterCard::~MonsterCard() {
    
}

ostream& operator <<(ostream& output, const MonsterCard &mc) {
    output << "MC-" << mc.name << "(" << mc.level << ") [" << mc.attack << "/" << mc.defense << "]";
    return output;
}


